home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / Components.idl < prev    next >
Text File  |  1996-05-01  |  3KB  |  96 lines

  1. /*
  2.      File:        Components.idl
  3.  
  4.      Contains:    Component Manager Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __COMPONENTS_IDL__
  19. #define __COMPONENTS_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __MIXEDMODE_IDL__
  28. #include <MixedMode.idl>
  29. #endif
  30.  
  31. #ifdef __SOMIDL__
  32.  
  33. #if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
  34. /* Component Resource Extension flags */
  35. /* Set Default Component flags */
  36. /* RegisterComponentResource flags */
  37. typedef SOMLargeStruct            ComponentDescription;        /* Derived from a struct of 20 bytes in size */
  38.  
  39. typedef SOMLargeStruct            ResourceSpec;                /* Derived from a struct of 6 bytes in size */
  40.  
  41. typedef SOMLargeStruct            ComponentResource;            /* Derived from a struct of 44 bytes in size */
  42.  
  43. typedef OpaquePtr                ComponentResourcePtr;        /* Substituted OpaquePtr for ``ComponentResource*'' */
  44.  
  45. typedef OpaquePtr                ComponentResourceHandle;    /* Substituted OpaquePtr for ``ComponentResourcePtr*'' */
  46.  
  47. typedef SOMLargeStruct            ComponentPlatformInfo;        /* Derived from a struct of 12 bytes in size */
  48.  
  49. typedef SOMLargeStruct            ComponentResourceExtension;    /* Derived from a struct of 10 bytes in size */
  50.  
  51. typedef SOMLargeStruct            ComponentPlatformInfoArray;    /* Derived from a struct of 16 bytes in size */
  52.  
  53. typedef SOMLargeStruct            ExtComponentResource;        /* Derived from a struct of 70 bytes in size */
  54.  
  55. typedef SOMLargeStruct            ComponentParameters;        /* Derived from a struct of 8 bytes in size */
  56.  
  57. typedef SOMFourByteStruct        ComponentRecord;            /* Derived from a struct of 4 bytes in size */
  58.  
  59. typedef OpaquePtr                Component;                    /* Substituted OpaquePtr for ``ComponentRecord*'' */
  60.  
  61. typedef SOMFourByteStruct        ComponentInstanceRecord;    /* Derived from a struct of 4 bytes in size */
  62.  
  63. typedef OpaquePtr                ComponentInstance;            /* Substituted OpaquePtr for ``ComponentInstanceRecord*'' */
  64.  
  65. typedef long                    ComponentResult;
  66.  
  67. typedef SOMLargeStruct            ComponentMPWorkFunctionHeaderRecord; /* Derived from a struct of 16 bytes in size */
  68.  
  69. typedef OpaquePtr                ComponentMPWorkFunctionHeaderRecordPtr; /* Substituted OpaquePtr for ``ComponentMPWorkFunctionHeaderRecord*'' */
  70.  
  71. typedef OpaquePtr ComponentMPWorkFunctionProcPtr;
  72. typedef OpaquePtr ComponentMPWorkFunctionUPP;
  73. typedef OpaquePtr ComponentRoutineProcPtr;
  74. typedef OpaquePtr ComponentRoutineUPP;
  75. typedef ComponentRoutineProcPtr ComponentRoutine;
  76.  
  77. /*
  78.     The parameter list for each ComponentFunction is unique. It is 
  79.     therefore up to users to create the appropriate procInfo for their 
  80.     own ComponentFunctions where necessary.
  81. */
  82. typedef UniversalProcPtr        ComponentFunctionUPP;
  83.  
  84. /* Component Database Add, Delete, and Query Routines */
  85. /* Component Instance Allocation and dispatch routines */
  86. /* Direct calls to the Components */
  87. /* Component Management routines */
  88. /* Component Instance Management routines */
  89. /* Useful helper routines for convenient method dispatching */
  90. #endif
  91.  
  92. #endif /* __SOMIDL__ */
  93.  
  94. #endif /* __COMPONENTS_IDL__ */
  95.  
  96.